//package org.example.datasource;
//
//import org.example.datasource.impl.JdbcDataSourceImpl;
//import org.example.datasource.model.JdbcDataSourceInfo;
//import org.example.datasource.model.TableMetadata;
//
//import java.util.HashMap;
//import java.util.List;
//import java.util.Map;
//
//public class DataSourceApiWarpper {
//    private Map<String,DataSourceApi> dataSourceApiMap = new HashMap<>();
//    public static DataSourceApiWarpper getInstance(){
//        return new DataSourceApiWarpper();
//    }
//
//   public List<TableMetadata> getTableMetadata(JdbcDataSourceInfo jdbcDataSourceInfo){
//        String key = jdbcDataSourceInfo.getUrl() + jdbcDataSourceInfo.getUsername() + jdbcDataSourceInfo.getPassword();
//       DataSourceApi dataSourceApi = dataSourceApiMap.get(key);
//       if (dataSourceApi == null){
//           dataSourceApi =  new JdbcDataSourceImpl(jdbcDataSourceInfo);
//           dataSourceApiMap.put(key,dataSourceApi);
//       }
//       return dataSourceApi.getTableMetadata();
//   }
//
//}
